public class Solution {
    public int solutionA(String ss){
        int n=ss.length();
        char []s=ss.toCharArray();
        int []dp=new int[n];
        //初始化
        if (s[0]!=0){
            dp[0]=1;
        }

        if (n==1){
            return dp[0];
        }

        if (s[0]!=0&&s[1]!=0){
            dp[1]+=1;
        }

        int t=(s[0]-'0')*10+(s[1]-'0');
        if (10<=t&&t<=26){
            dp[1]+=1;
        }

        //开始填表
        for (int i=2;i<=n;i++){
            if (s[i]!=s[0]){
                dp[i]+=dp[n-1];
            }
            int tt=(s[i-1]-'0')*10+(s[i]-'0');
            if (10<=tt&&tt<=26){
                dp[i]+=dp[i-2];
            }
        }
        return dp[n-1];
    }
}
